# -*- coding: utf-8 -*-
"""testcase 级别的 conftest

将项目根目录加入 `sys.path`，然后动态导入根级 `conftest`，
把其中的公开符号（含 fixture）添加到当前模块的命名空间，
以便 PyTest 在子目录运行时也能识别这些 fixture。
"""

from pathlib import Path
import sys
import importlib

ROOT_DIR = Path(__file__).resolve().parent.parent
if str(ROOT_DIR) not in sys.path:
    sys.path.insert(0, str(ROOT_DIR))

# 动态导入根级 conftest
_root_cf = importlib.import_module("conftest")

# 将根级 conftest 中非私有属性暴露到当前模块
for _name, _val in _root_cf.__dict__.items():
    if not _name.startswith("__"):
        globals()[_name] = _val